package br.org.desa.agendaescolar.dao;

import java.util.List;

import br.org.desa.agendaescolar.modelo.*;


public class DAOCompromisso extends DAOGenerico<Compromisso>{
	
		public DAOCompromisso() {
			super();
		}

	public List<Compromisso> findAll() {
		return findAll(Compromisso.class);
	}

	public Compromisso findByCodigo(String valor) {
		return super.findByField(Compromisso.class, "codigo", valor);
	}
	
	public List<Compromisso> findByDisponibilidade(String valor) {
		return super.findAllByField(Compromisso.class, "disponivel", valor);
	}
	
	public List<Compromisso> findAllByDataPassada(){
		String consulta = "SELECT c FROM Compromisso c WHERE c.dataHora <= CURRENT_TIMESTAMP";
		return super.findAllByQuery(consulta);
	}
	
	public List<Compromisso> findAllByAluno(Usuario aluno){
		String consulta ="SELECT c FROM Compromisso c WHERE c.aluno.codigo = "+aluno.getCodigo();
		return super.findAllByQuery(consulta);
	}

	public String findQntCompromissosPorUnidade(Usuario aluno, int unidade){
		String consulta ="SELECT count(c) FROM Compromisso c WHERE c.aluno.codigo = "+aluno.getCodigo()+" AND c.unidade = "+unidade;
		Long l = (Long) super.findByQuery(consulta); 
		return Long.toString(l); 
	}
	
}
